package com.shiguang.springboot.config;

import com.shiguang.springboot.annotation.ShiGuangConditionalOnClass;
import com.shiguang.springboot.interfac.AutoConfiguration;
import com.shiguang.springboot.server.JettyWebServer;
import com.shiguang.springboot.server.TomcatWebServer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @program: shiguang-springboot
 * @description: WebServiceAutoConfiguration配置类
 * @author: chaidl  ！
 * @create: 2022-07-17 20:48
 */
@Configuration
public class WebServiceAutoConfiguration implements AutoConfiguration {
	/* 有了条件注解，我们就可以来使用它了，那如何实现呢？
	
	这里就要用到自动配置类的概念，我们先看代码： */
	@Bean
	@ShiGuangConditionalOnClass ("org.apache.catalina.startup.Tomcat")
	public TomcatWebServer tomcatWebServer(){
		return new TomcatWebServer();
	}
	
	@Bean
	@ShiGuangConditionalOnClass("org.eclipse.jetty.server.Server")
	public JettyWebServer jettyWebServer(){
		return new JettyWebServer();
	}
}
